package com.sata.sim.model;

import com.sata.sim.data.Constant;
import com.sata.sim.ho.Cell;
import com.sata.sim.model.Traffic.ChannelState;

public class Traffic {
	
	public static enum TrafficType{
		Voice {
			@Override
			public int capacity(Cell c) {
				
				return Constant.VoiceBitSize;
			}
		}, Video {
			@Override
			public int capacity(Cell c) {
				
				return 0;
			}
		}, Web {
			@Override
			public int capacity(Cell c) {
				
				return 0;
			}
		} ;
		
		public abstract int capacity(Cell cell);
	}
	
	public static enum ChannelState{
		S1LOS,S2Moderate ,S3Deep;

	}
	
	
	private TrafficType type;
	private long time;
	private Cell _origincell;
	private ChannelState _channelState; 

	public TrafficType getType() {
		return type;
	}

	public void setType(TrafficType type) {
		this.type = type;
	}

	public long getTime() {
		return time;
	}

	public void setTime(long time) {
		this.time = time;
	}

	public Cell getOrigincell() {
		return _origincell;
	}

	public void setOrigincell(Cell origincell) {
		_origincell = origincell;
	}

	public ChannelState getChannelState() {
		return _channelState;
	}

	public void setChannelState(ChannelState channelState) {
		_channelState = channelState;
	}


}
